home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Digital Talk 55
/
Digital_Talk_55_2002-06-10_Digital_Talk_de_Side_C.d64
/
basic-praxis 1.1
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2023-02-26
|
37KB
|
1,195 lines
5 gosub6:poke792,116:poke793,164:gosub9998:goto5000:--reset,rs-taste,test+start
6 ::sys64931:sys58784:sys64917:sys58651:::sys64789:sys58346:::rem---reset prg
7 :poke.,47:poke24,.:sys62255:sys58451:sys43957:sys60911:poke198,.:return:--norm
8 ::a$="basic-praxis 1.1":open1,8,15,"s:"+a$:close1:savea$,8:return:---save-prg:
9 ====speicher====================
10 b=128:rem---binaerzahl ausgeben(a)
11 :z$(.)=".":z$(1)="1":fori=.to7:printz$(-((aandb)>.));:b=b/2:next:return: :
12 :rem---bits(0-7)und negation(255-bit)
13 :b(7)=128:b(6)=64:b(5)=32:b(4)=16:b(3)=8:b(2)=4:b(1)=2:b(0)=1:
14 :fori=.to7:n(i)=255-b(i):next:return:
15 :rem---bits setzen/loeschen(p,i)
16 :poke p,peek(p)or b(i):return:
17 :poke p,peek(p)andn(i):return:
18 :poke p,peek(p)andnorb:return:
19 ===funktionen=================
20 :rem---zahlenkorrektur/runden/modulo
21 :deffn k(a)=val(str$(a)):
22 :deffn r(a)=fnk(int(a*100+.5)/100)
23 :deffn m(a)=a-int(fnk(a/m))*m
25 :rem---2-byte peek/zufalls-zahlen
26 :deffn p(a)=peek(a)+peek(a+1)*256
27 :deffn z(a)=int(rnd(1)*a)+1
29 :
30 :rem---joystick/tasten-abfrage
31 :deffn j(a)=31-peek(56320+a)and31
32 :deffnt(a)=64-peek(203)+peek(653)/10
33 :deffn tt(a)=fnp(245)+peek(203):
34 :rem---cursor position/cursor peek
35 :deffn c(a)=fnp(209)+pos(.)+a
36 :deffn cp(a)=peek(fnc(a))
37 :
40 :rem---farbcode nach ascii-code
41 :deffn fa(a)=peek(59610+(aand15))
42 :deffn ff(a)=fnfa(peek(646))
43 :
44 :rem---schirm/ascii-code
45 :deffn s0(a)=a-(a<32)*64-(a>63)*32-(a>95)*32::deffn sa(a)=fns0(aand127)
46 :deffn as(a)=a+(a>63)*64-(a>95anda<128)*32+(a>191)*64+(a=255)*33
47 :
48 :r$=chr$(13):h$=chr$(34)::goto3951: :
49 ===grundlagen===============
50 :rem---tastenabfrage-varianten(a$)
51 :gosub54:geta$:return:
52 :gosub54:sys61758:a=peek(780):return
53 :gosub54:a=peek(631):return:
54 poke649,1:poke198,.:wait198,1:return
55 ::::::::::::goto902:
56 :poke786,168:poke785,163:sys47083(x),usr(.):---goto(x)
57 :a=2048:a%=a/256:poke781,a-a%*256:poke782,a%:sys47078:---goto adresse
58 :sys42638:rem---goto prg-anfang
59 :poke780,167:poke782,174:sys42625:end:--kein return,stapel init
60 :rem---restore adresse(a)
61 :poke66,int((a-1)/256):poke65,a-peek(66)*256-1:
62 :deffnl(a)=peek(61)+peek(62)*256+1:return:---zeilen-adresse
63 :gosub602:dim l(20):gosub62:
64 :l(1)=fnl(.)::data"name 1",1,2
65 :l(2)=fnl(.)::data"name 2",2,3
66 :return:
67 :rem"---[193][213][198][210][213][198]:
68 :[141]63:a[178]l(2):[141]60:[135] a$,a,b:[153]""a$,a,b:[142]:
69 : :
70 :[141]75:[137]77:[143]--sprite input(a$)
71 :x[178][185](.):y[178][194](214):x[178]x[171][181](x[173]40)[172]40:c[178]x[172]8[170]24:a[178]1:[151]vc[170]39,[194](646)
72 :[151]vc,c[175]255:[151]vc[170]16,[171](c[177][178]256):[151]vc[170]1,y[172]8[170]43:i[178].:[151]vc[170]21,a:
73 :[161]a$:[139]a$[178]""[167]:i[178]i[170]1:[145]1[171](i[178]15)[137]73:a[178]1[171]a:[137]72:
74 :a%[178][198](a$)[173]32:[151]vc[170]21,.:[151]212,.:[142]: :
75 :b[178]11:a[178]([194](648)[175]192)[172]256[170]b[172]64:br[178][194](648)[172]256:vc[178]53248:p[178][185](x)
76 :[129]i[178]a[164]i[170]63:[151]i,.:[130]:[151]a[170]45,255:[151]a[170]42,255:[151]br[170]1016,b:[142]::::
77 ::[141]71:[139][168](a$[178][199](13)[176]a$[178]"on"[176]a$[178]"")[167]:[153]a$;:[137]77:
78 :[158]58882:[151]211,p:a$[178]"":[159]1,3:[129]i[178]p[164][194](200)[171]1:[161]#1,b$:a$[178]a$[170]b$:[130]
79 :[160]1:[153]:[142]:[171][171][171]einlesen :
80 :p[178]0:[143]--joy & tasten-abfrage(p,a$)
81 :[161]a$:j[178]31[171][194](56320[170]p)[175]31:[145][171](j[178].[175]a$[178]"")[137]81:[139]j[178].[167]:[142]
82 :[139]j[175]4[167]:a$[178]"cmd":[142]
83 :[139]j[175]8[167]:a$[178]"":[142]
84 :[139]j[175]2[167]:a$[178]"":[142]
85 :[139]j[175]1[167]:a$[178]"on":[142]
86 :a$[178][199](13):[142]:[171][171][171]feuerknopf
87 :
88 :[153]" cmd";a$;"(NULL)cmd";:[141]80:[145][171](a$[179][177]r$)[137]88:[142]:
89 :
90 :[143]---input mit sonderzeichen(a$)
91 :a$[178]"":a[178][185](.):[158]42336:[129]i[178]512[164]511[170][194](200)[171]a:a$[178]a$[170][199]([194](i)):[130]
92 :a[178][197](a$):[153]""a$,a:[142]:
93 :
94 :
99 [178][178][178][178][164]n[173]musik[178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178]
100 :n[178].:[143]----ton(l,f,t,w,a,h,g,n,s)
101 :sd[178]54272:[129]ig[178]1[164]n:[141]102:[141]110:[141]105:[130]:[142]:
102 :sx[178]sm[172]7:[151]sd[170]sx[170]2,(t[171][181](t))[172]1001:[151]sd[170]sx[170]3,t:
103 :[151]sd[170]22,g:[151]sd[170]21,(g[171][181](g))[172]1001:[151]sd[170]sx,(f[171][181](f))[172]1001:
104 :[151]sd[170]sx[170]1,f:[151]sd[170]sx[170]6,h:[151]sd[170]sx[170]5,a:[151]sd[170]24,l:[151]sd[170]sx[170]4,w:[142]:
105 :[151]sd[170]sm[172]7[170]5,.:[151]sd[170]sm[172]7[170]4,.:[142]:[171][171][171][164]n aus
106 :sd[178]54272:[151]sd[170]4,.:[151]sd[170]11,.:[151]sd[170]18,.:[151]sd[170]24,.:[142]:[171][171]alles aus
108 :
110 :[143]---wait seconds(s)
111 :[129]ih[178].[164]s[172]900:[130]:[142]:
112 [129]ih[178]ti[164]ih[170]s[172]60:ih[178]ti:[130]:[142]
113 :
120 :[143]---aufruf
121 :w[178]65:f[178]30:n[178]11:s[178].2:
122 :sm[178]0:l[178]15:t[178]25.25:h[178]255:g[178]0:a[178]15:[141]101:[141]106:[142]:
129 :
148 :
150 :sid[178]54272:[143]----tonmodul variablen
151 :f [178] sid[170]0[171]1: [164]nhoehe([184]quenz)
152 :t [178] sid[170]2[171]3: tastverhaeltnis(w[178]65)
153 :w [178] sid[170]4 : wel[195]art([164]nart)
154 :a [178] sid[170]5 : ab[170]anschwell[171]zeit
155 :h [178] sid[170]6 : [164]nfuelle[170]halte[171]pegel
156 :sm[178] ..... : stimme(0[171]2)
157 :s [178] ..... : sekunden
158 :n [178] ..... : wiederholzahl
159 :
160 :g [178]sid[170]21[171]2: grenz[184]quenz
161 :r [178] sid[170]23 : res[145]anz [170] filterart
162 :l [178] sid[170]24 : laut[171]leise[170]filter[171]ein
163 :
164 :o [178](sid[170]27): oszila[164]r stimme 3
165 :k [178](sid[170]28): huellkurve stimme 3
166 :
167 :
198 :
199 [178][178][178][178]sprites[178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178]
200 :[143]--sprite ein(x,y,f,a,p,nr,nb)
201 :[141]222:[143]---aus+variablen
202 :[141]216:[141]213:[141]203:[137]210:
203 :[143]---pos(x,y)
204 :q[178]v[170]2[172]nr:[151]q[170]1,y:[151]q,x[175]255
205 :[151]v[170]16,[194](v[170]16)[175]n(nr)[176][171](x[178][177]256)[172]2[174]nr:[151]q[170]1,y:[142]:
210 :[141]224:[143]--an,prio.,blk(a,p,nb)
211 :[151]bs[170]1016[170]nr,nb:[151]v[170]27,[194](v[170]27)[175]n(nr)[176]p[172]2[174]nr
212 :[151]v[170]21,[194](v[170]21)[175]n(nr)[176]a[172]2[174]nr:[142]:
213 :::[143]---multicolor,farben(m,f2,f3)
214 :[151]v[170]28,[194](v[170]28)[175]n(nr)[176]m[172]2[174]nr::[151]v[170]37,f2:[151]v[170]38,f3:
215 :[151]v[170]39[170]nr,f:[142]:[171][171][171]farbe(f)
216 :::[143]---expand(s,w)
217 :[151]v[170]23,[194](v[170]23)[175]n(nr)[176]s[172]2[174]nr:[151]v[170]29,[194](v[170]29)[175]n(nr)[176]w[172]2[174]nr
218 :[142]:
219 :
220 :[143]---spritedata-install(nr,nb)
221 :[141]60:[141]225:[129]i[178].[164]63:[135]h:[151]na[170]i,h:[130]:[151]bs[170]1016[170]nr,nb:[142]
222 :[143]---sprite reset/varinit
223 :[141]224:[151]v[170]21,.:[151]v[170]23,.:[151]v[170]29,.:[129]i[178]v[164]v[170]16:[151]i,.:[130]:[142]
224 b[178]1:[129]i[178].[164]7:n(i)[178]255[171]b:b[178]b[170]b:[130]
225 :bs[178][194](648)[172]256:vs[178]([194](648)[175]192)[172]256:na[178]vs[170]nb[172]64:v[178]53248:[142]
229 :
230 :[143]---sprite beiwerte les/setz
234 :b[178][194](na[170]63):m[178][180](b[175]128):w[178][180](b[175]64):s[178][180](b[175]32):f[178]b[175]15:[142]
235 :[151]na[170]63,f[170]m[172]128[170]w[172]64[170]s[172]32:[142]
238 :
239 :
240 :[143]---sprites gleichzeitig setzen
241 :[143]---vic-tabelle(60600)
242 :v[178]60600:[141]204:v[178]53248:[142]:[171][171][171][171][171][171]schreib
243 :z[178]16:[151]781,z:[158]58794:[142]:[171][171][171][171][171][171][171]setz
244 :
250 :[141]280:[143]---sprite-steuerung
251 :x[178]100:y[178]100:f[178]1:v[178]53248:[151]v[170]21,.:[151]v[170]27,([194](v[170]27)[175]254):[151]v[170]39,f:
252 :[141]274:[151]v[170]27,.:[151]v[170]21,1:
260 :[141]274:ks[178][194](v[170]31)[176][194](v[170]30):[139]ks[137]261:[143]---sprite kollision
261 :xv[178]x:yv[178]y:[141]270:[143]---joystick
262 :k[178]k[171]2[172](k[179]4)[171]4[172](k[177]3[175]k[179]8):[139]j[179][177]jv[167]:k[178]k[173]1.5
263 :x[178]x[170]jr[172]k:[139]x[179]15[176]x[177]330[167]:x[178]15[171]315[172](x[177]15):k[178].
264 :y[178]y[170]ju[172]k:[139]y[179]42[176]y[177]235[167]:y[178]42[171]193[172](y[177]42):k[178].
265 :[145]1[170]jf[137]260:[151]v[170]21,0:[142]
266 :
270 :p[178].:jv[178]j:[143]---get joystick
271 :j[178]31[171][194](56320[170]p)[175]31:[139]j[178].[167]:k[178]j:[137]271:
272 :ju[178][180]((j[175]2)[171](j[175]1)):jr[178][180]((j[175]8)[171](j[175]4)):jf[178][171](j[177]15):[142]:
274 :[151]v[170]1,y:[151]v,x[175]255:[151]v[170]16,[171](x[177][178]256):[151]v[170]1,y:[142]:[171][171][171]set sprite
275 :
280 :[143]---sprite datas
281 :[141]62:a[178][165]l(.):nr[178].:nb[178]11:[141]220:[142]
282 [131]255,255,255,255,255,255,192,64,12,96,128,112,48,129,192,25,3,,14,6,
283 [131]6,6,,3,6,,1,134,,,231,,,99,,,51,128,,25,128,,13,128,,7,128,,3,128,,
284 [131]128,,,,,,,,,,1
285 :
299 [178][178][178]k[145]figurati[145][178][178][178][178][178][178][178][178][178][178][178][178][178][178]
300 [171][171]rom[173]ram,schirm(52224),satz(53248)
301 [151]56334,.:[151]1,51:[129]i[178]88[164]91:[151]i,.:[130]:[151]781,97:[151]782,.:[158]41971
302 :[151]53248[170]32[172]8[170]4,32:[143]---inst.
303 :[151]1,53:[151]56334,1:[151]648,204:[158]58692:[151]56576,196:[151]53272,52:[142]
310 :[141]60:[143]---super data-poke
311 :c[178][194](1):[151]56334,.:[151]1,51:[141]312:[151]1,c:[151]56334,1:[142]
312 :[129]a[178].[164]65535:[135]b:[139]b[177][178].[175]b[179]256[167]:[151]a,b:[137]314:
313 :a[178][182](b)[171]1:[139]b[179].[167]:a[178]a[170]66000[172][171](b[177][171]1):[139]b[179][171]255[167]:[158][182](b)
314 :[130]:[142]:
317 :
320 :[143]"(NULL)eichen-atndr.berechnen+poken(8b)
321 :z=32:zs=53248::a=zs+8*z:printa
322 :gosub311:data53504,,,,32,,,,,-.1
325 :return:
326 :
330 :poke53272,peek(53272)and240or(a*2):return:---zeichensatz schalten(0-7)
331 :poke53272,peek(53272)and15ora*16:poke648,peek(648)and240ora*4:return:schirm
340 "[203][207][206][198][201][199][213][210][193][212][201][207][206] des [211]peichers ein-
341 "stellen:
342 :poke1,55:rem--i/o,basic+kernal rom
343 :poke1,54:rem--i/o,basic ram,k. rom
344 :poke1,53:rem--i/o,basic+kernal ram
345 :poke1,52:rem--64 kb im ram
346 :poke1,51:rem--zeichen rom(53248)
347 :poke1,48:rem--64 kb im ram
349 :
350 :rem---:schirm(35840),satz(36864)
351 :gosub354:poke648,140:sys58692:poke56576,197:poke53272,52:return:
352 :poke648,4:sys58692:rem---standard
353 :poke56576,199:poke53272,23:poke53265,27:return:
354 :a=32768:rem---speicher begrenzen
355 :a%=a/256:a=a-a%*256:poke51,a:poke52,a%:poke55,a:poke56,a%:return:
356 :
398 :
399 ===speicher kopieren===========
400 :rem---einzelkopie(a,e,n)
401 :fori=.toe-a:poken+i,peek(a+i):next::return:
404 :rem---string in speicher(a,a$)
405 :fori=.tolen(a$)-1:pokea+i,asc(mid$(a$,i+1)):next:return:
406 :rem---tastenpuffer beschreiben(a$)
407 a=631:gosub405:poke198,i-1:poke211,.:poke213,79:sys42107
408 :
409 :
410 :cs=46728:rem---string-copy(a,n,b)
412 :h=256::a%=n/h:poke53,n-a%*h:poke54,a%:a%=a/h:poke782,a%:poke781,a-a%*h
413 :poke780,b:syscs:return
419 :
430 ca=41960:rem---hoch-copy(a,e,n)
431 poke56334,.:poke1,51:gosub432:poke1,55:poke56334,1:return:---zeichencopy
432 h=256:b=e-a:c=int(b/h)*h:e=a+c:n=n+c:a%=e/h:poke90,e-a%*h:poke91,a%:a%=n/h
433 poke88,n-a%*h:poke89,a%:poke781,c/h+1:poke782,(b-c+1)and255:sysca+4:return
438 :
439 :
440 cb=42206:rem---runter copy(a,e,n)
441 gosub442:gosub443:pokecb+2,34:pokecb+9,35:pokecb+15,32:return
442 pokecb+2,88:pokecb+9,89:pokecb+15,96:return
443 :::h=256:b=e-a:b%=b/h:b=b-b%*h+1:b=b+h*(b>.):c=n+b:a=a+b:
444 a%=a/h:poke88,a-a%*h:poke89,a%:a%=c/h:poke36,c-a%*h:poke37,a%:
445 poke782,(h-b)and255:poke781,b%+1:syscb:return:
446 cb=42206:fori=.to14:poken+i,peek(cb+i):next:cb=n:goto442:---install(n)
448 :
449 :
450 rs=828:rem--ram-sprung/usr-ram-peek (lesen/schreiben/ausfuehren des rams)
451 :a%=rs/256:poke209,rs-a%*256:poke210,a%:poke211,.:poke213,79
452 :print"h[184]e[146]i%[146]a[200]%[146]be[146]a%[146]i pce[146]i[168]e[146]a%[146]i([160]";:rem---sprung(25b)
453 :print"%[146]u[200]%[146]t[200] [183]7%[146]ae[146]i [146]0[184]d[146]a [146]@1[146]t$[146]id[146]a[216][204]z8":rem---peek(30b)
454 :a=rs+25:a%=a/256:poke785,a-a%*256:poke786,a%
455 :co=48:rem---vektor & config(v,co)
456 :pokers+7,169:pokers+8,co:a%=v/256:pokers+14,v-a%*256:pokers+15,a%:return
457 :
460 :rem---ram lesen/schreiben
461 :gosub450:p=usr(a):return:---les a
462 poke56334,.:poke1,51:pokea,b:poke1,55:poke56334,1:return:--schreib a,b
463 :
464 :
465 :
499 ===schirm rollen==============
500 a=.:e=24:rem-seiten-scroll h/r(a,k)
501 :h=217+a:a=a-1and255:ifk<.goto503
502 :h=h+1:forj=1tok:pokeh,peek(h)or128:poke214,e:print"[145]":next:return
503 :forj=1to-k:poke214,a:sys59749:pokeh,peek(h)or128:next:return
509 :
510 :rem---roll hoch/runter(a,e,k)
511 :poke214,a:a$="":b$="[145]":ife<athen:a$=b$:b$="":b=a:a=e:e=b
512 :forj=1toabs(k):fori=1toabs(e-a):printa$;:poke172,peek(209)
513 :poke173,peek(210):printb$;:sys59855:printa$;:next:next:return:
519 :
520 :gosub1825:rem--links/rechts(a,e,k)
521 :poke59385,.:poke211,.:m=(e-a)*3
522 :fori=1toabs(k):poke214,a:sys58640:gosub523:next:poke59385,4:return:
523 ifk>.then:printleft$(sr$,m);:return
524 :printleft$(sl$,m);:return:
525 :a$="[148] "+r$:l=75:gosub600:sr$=a$:a$=""+chr$(20)+r$:gosub600:sl$=a$:return
598 :
599 =====string operationen=======
600 :rem---string gen(a$,l)
601 :a$=a$+a$:on-(len(a$)*2<l)goto601:a$=a$+left$(a$,l-len(a$)):return:
602 :poke49,peek(47):poke50,peek(48):return:---felder loesch
609 :
610 :rem---set-string(a,l)
611 :gosub614:pokev,l:pokev+1,a-int(a/256)*256:pokev+2,a/256:return:
612 :gosub613:sysa:return:--sys-string
613 :gosub614:l=peek(v):a=peek(v+1)+peek(v+2)*256:return:---str.adresse/laenge
614 :poke32,peek(71):poke33,peek(72):v=peek(32)+peek(33)*256:return:---var-adr
615 :
617 x$="":a=1024+80:l=20:c=len(x$):gosub610:printx$:return:---aufruf set-string
619 :
620 b$=" ":rem---basic-string(a$,b$)
621 :p=511:gosub623:pokep+q,.:a$=b$:p=630:gosub623:gosub622:sys58451:return
622 :poke768,212:poke769,168:poke781,255:poke782,1:sys42118:
623 :forq=1tolen(a$):pokep+q,asc(mid$(a$,q)):next:poke198,len(a$):return:
625 :rem---listen und nachladen-demo
626 :a$="list 625":gosub620::return:
627 h$=chr$(34):a$=":l[207]"+h$+"basic*"+h$+",8":b$="run:"+chr$(13):goto621:
628 :
629 :
640 :n=50:rem---feld loeschen+fuellen
641 :poke49,peek(47):poke50,peek(48):
642 :dim d$(1,n),g(n):print"fuellen":deffn r(a)=rnd(1)*25+64:
643 :fori=1ton:d$(.,i)=chr$(fnr(.))+chr$(fnr(.))+chr$(fnr(.)):next:return:
644 :
650 :rem zeiger sort ---- :::::---(prinzip:such kleinsten)
651 :print"[147]zeiger sort"
652 z=n:forj=1ton:ifz<=jgoto656:
653 x=n:z=n:a$=d$(.,n):fori=ntojstep-1:if(d$(.,i)<=a$)then:x=i:a$=d$(.,x):z=z-1
654 :next::ifx>jthen:forh=.to1:h$=d$(h,j):d$(h,j)=d$(h,x):d$(h,x)=h$:next:
655 :
656 :geta$:ifa$>""then:wait198,1:geta$:ifa$="[136]"then:j=n+2:goto658:---wart
657 :print""j"[146]"d$(.,j)"..."d$(1,j)
658 :next:return:
659 :
660 :rem----super-zeiger-sort(n,d$(x,y))
662 j=n:z=n:g(z)=n:print"super zeiger"
663 :fora=1ton:on-(z<a)goto668:z=z-(z<n):on-(j<a)goto667:on-(z<n)goto665:h=a:
664 j=n:fork=aton:k=k-(d$(.,n)>=d$(.,k)ork>h+15)*n:a=k:on-(a<n)gosub670:next:a=h
665 a$=d$(.,g(z)):forj=j+(j=n)toastep-1:ifd$(.,j)<=a$thena$=d$(.,j):z=z-1:g(z)=j
666 :next:rem---suchen
667 :j=g(z):on-(j>a)gosub670
668 :gosub671:next:return:
669 :
670 :fori=.to1:a$=d$(i,a):d$(i,a)=d$(i,j ):d$(i,j)=a$:next:return:---tausch
671 :geta$:if(a$>"")then:wait198,1:geta$:ifa$="[136]"then:a=a+n:return:---warten
672 :print""a"[146]"d$(.,a)"..."d$(1,a)"":return:---ausgabe
673 :
674 :
699 ====laden und speichern========
700 :rem---basic-prg laden(a$)
701 :deffnp(a)=peek(a)+peek(a+1)*256:gosub9999:gosub710:ifst<>64then:return:
702 :poke45,peek(174):poke46,peek(175):sys42291:run:
703 :rem---basic-prg speichern(a$)
704 :deffnp(a)=peek(a)+peek(a+1)*256:gosub9999:e=e-1:gosub714:return:
710 :rem---prg-load(a$,a)
712 :h=256:sys(57812)a$,8,.:poke780,.:a%=a/h:poke782,a%:poke781,a-a%*h:
713 :poke157,.:sys62622:sys60911:return
714 :rem---prg-save(a$,a,e)
716 :h=256:sys(57812)"@0:"+a$,8:a%=a/h:poke194,a%:poke193,a-a%*h
717 :b=e+1:a%=b/h:poke175,a%:poke174,b-a%*h:poke157,.:sys62957:return
719 :
720 :rem--prg abschneiden
721 :gosub9998:pokea,.:pokea+1,.:a=a+2
722 :poke32,a/256:poke31,a-peek(32)*256:poke45,peek(31):poke46,peek(32):return
728 :
729 :
730 :rem---demo
731 :gosub733:print"speichern,loesch,";:a$="x2":gosub703:gosub720:clr
732 :gosub733:print"laden";:a$="x2":gosub700:run
733 :print"anzeigen":a=10000:e=a:gosub910:gosub50:print:return:
734 :
750 :rem---lade-prg+puffer(p$)install
751 pu=51968:v2=710:z=-13:l=.::fori=.to17:pokev2+i,peek(42336+i):next:v2=v2+14
752 ::pokev2-8,abs(z):pokev2-6,8*-(z>=.):pokev2+3,96:pokev2+1,208:rem--code(z)
753 ::ph=int(pu/256):pl=pu-ph*256:pokev2-4,pl:pokev2-3,ph:rem---puffer(pu,p$,l)
754 :p$="":poke32,peek(71):poke33,peek(72):v1=peek(32)+peek(33)*256:rem--string
755 :pokev1,l:pokev1+1,pl:pokev1+2,ph
756 :return:
759 :
760 :rem---speichern/laden demo
761 :n$="xx"::open1,8,1,"@0:"+n$+",s,w"
762 :print"s,";:a$="test":b$="ok":print#1,chr$(len(a$));a$;b$:close1:print"l:";
763 :open1,8,.,n$+",s,r":gosub750:
764 :a$="":poke781,1:sys65478:gosub770:a$=p$:sys65484:input#1,b$:close1:return:
769 :
770 :sys61758:l=peek(780):pokev1,l:ifl=.then:return:---string laden
771 :pokev2,l:sysv2-14:return:
772 :
773 :
774 :
799 ==grafik-config===============
800 :rem---grafik-loesch+ein(cg,f,l,m)
801 :cg=4:f=15+0*16:l=0:m=0::gosub805:
802 :poke1,55:gosub810:rem---loesch
803 :a=br:e=a+998:n=a+1:pokea,f:gosub443::a=gr:e=a+7998:n=a+1:pokea,l:gosub443
804 :goto820:
805 :gosub450:n=rs+55:gosub446:v=cb:cb=rs:gosub455:return:---inst.copy+peek
809 :
810 :rem---grafik-config(cg=1-4)
811 :ifcg=1then:br=1024::gr=8192::v=1:
812 :ifcg=2then:br=23552:gr=24576:v=7:
813 :ifcg=3then:br=35840:gr=40960:v=3:
814 :ifcg=4then:br=51200:gr=57344:v=2:
815 :g=1:bl=1024:gl=bl*8:zz=.:zs=53248:b=128:fori=.to7:b(i)=b:b=b/2:next:return
819 :
820 :gosub810:rem---grafik ein/aus
821 poke1,55:poke53265,11:p=56576:pokep,(peek(p)and252)or(3-int(gr/(gl*2)))
822 p=53272:poke2,peek(p):pokep,g*8+v*16:poke53270,m*16+200:poke53265,59:return
825 :poke53265,11:goto352:--graphik aus
827 :
828 :
830 :rem---linie(x1,y1,x2,y2)
831 :fori=1tomx-1:x1=x(i):y1=y(i):x2=x(i+1):y2=y(i+1):gosub832:next:return:
832 :m=(y2-y1)/(x2-x1):e=y1-m*x1:ifabs(x2-x1)>abs(y2-y1)goto834
833 :fory=y1toy2stepsgn(y2-y1):x=int((y-e)/m):gosub835:next:return:
834 :forx=x1tox2stepsgn(x2-x1):y=int(m*x+e):gosub835:next:return:
835 :b=xand7:a=gr+y+(yand248)*39+x-b:pokea,usr(a)orb(b):return:--set pixel(x,y)
838 :
850 :rem---grafik-string(a$,zz,zs,f)
851 poke56334,.:poke1,51:gosub852:poke1,55:poke56334,1:return:
852 :h=256:poke214,zz/40:poke211,zz-int(zz/40)*40:sys58640:
853 :p=peek(209)+peek(210)*256:j=peek(211):printa$;:fori=jtopeek(211)-1
854 :a=peek(p+i):n=gr+zz*8:pokebr+zz,f:zz=zz+1:a=zs+a*8:a%=n/h:poke53,n-a%*h
855 :poke54,a%:a%=a/h:poke782,a%:poke781,a-a%*h:poke780,8:sys46728:next:return
859 :
860 :rem---grafik demo
861 :gosub800:a$="[199]raphikschirm("+str$(gr)+" )":zs=53248+2*bl:f=1:gosub850
862 :mx=6:x(1)=10:y(1)=100:x(2)=160:y(2)=190:x(3)=310:y(3)=100:x(4)=160:y(4)=10
863 :x(5)=x(1):y(5)=y(1):x(6)=x(3):y(6)=y(3):gosub830:
865 :gosub52:gosub825:return:
898 :
899 ====sub-prg===================
900 :rem---prg-tastenabfrage
901 :gosub910:rem---list
902 :poke198,.:wait198,1:a=peek(631)::ifa=148then:gosub6:print"[147]";:poke214,255
903 :gosub7:ifa=69ora=148then:printr$"edit":sys42107
904 :ifa=92ora=83then:gosub940:on-(f<>.)goto902:on1-(a=83)gosub8,930:goto902:
905 :ifa=68then:gosub960:goto902:---linesave/druck
906 :ifa=86then:print"[147]":gosub947:a$="$":print:on-(f=.)gosub951:gosub50
907 :return:
908 :
909 :
910 :rem---prg-lister(a,e)
911 :poke214,peek(214)-1and255
912 :poke157,128:gosub913:poke22,25:poke157,.:poke212,.:sys58451:return:
913 :poke211,.:poke210,2:poke209,.:print"[146][204][201][211][212]"abs(a)"[157]-"abs(e)"[157]@";
914 :poke22,25-(a<.)*10:poke768,212:poke769,168:poke781,255:poke782,1:sys42118:
915 :
916 :rem---list-demo
917 :a=-5000:e=5003:gosub910:return:
918 :
919 :
930 n$=chr$(0):rem----save lines(n$,a,e)
931 :poke781,0:sys59903:poke213,39:a$="":input"zeilen-save(name,a,e)";a$,a,e
932 :gosub940:if(a*e=.orf<>.ora$="")then:return
933 :x=a:gosub936:a=ad:x=e+1:gosub938:e=ad-1::open1,8,1,"@0:"+a$+",prg,w"
934 :print#1,"";:fori=atoe:print#1,chr$(peek(i));:next:print#1,n$n$;:close1
935 :a=.:return:rem---find line(x)
936 :deffnp(i)=peek(i)+peek(i+1)*256:
937 ad=fnp(61)+1:z=fnp(ad+2):ifx<zthen:ad=43:
938 :forz=.tox:ad=fnp(ad):z=fnp(ad+2):printz"[145]":next:z=z-1:return:
939 :
940 b$="$":rem---disk-check+frei-blocks
941 :gosub946:close1:poke768,61:open1,8,.,b$:close1:ifst<>.goto945:--an/aus
942 gosub946:open1,8,15:on-(st<>.)goto945:input#1,f,f$:close1:iffgoto945:fehler
943 :open1,8,15,"i":print#1,"m-r"chr$(250)"":get#1,c$,b$,b$:close1:n$=chr$(0)
944 :fd=asc(c$+n$)+asc(b$+n$)*256:
945 :poke768,139:close1:return:
946 :f$="drive off":fd=.:f=99:return:
947 gosub940:poke19,1:print"disk: "f$tab(22)"frei:"fd"[157] bl ":poke19,.:return
949 :
950 a$="$0:*=prg":rem--disk-verzeichnis
951 :close1:open1,8,.,a$:poke781,1:sys65478:n$=chr$(.):geta$,a$,a$,a$:a=13
953 geta$,b$:a$=str$(asc(a$+n$)+asc(b$+n$)*256)
955 :on-(peek(197)+peek(653)<>64)goto955:ifstthen:sys65484:close1:return
956 :printmid$(a$,2)" ";:fori=.toa:geta$,b$:printa$b$;:next:print:a=14:goto953
957 :
958 :
960 :rem---schirm auf drucker
961 :gosub965:open1,4:print#1,chr$(27)chr$(.);:if(st)goto965:
962 :print"";:open2,3:
963 :forj=.topeek(213):poke212,.:get#2,a$:print#1,a$;:next:
964 :if(peek(214)<24)goto963
965 :close1:close2:return:
968 :
969 :
970 :rem---video-modus(vm=0-5,vs=0-3,b)
971 :vm=0:vs=3:b=1:zf=1:f0=6:f1=6:y=3:x=0:gosub973:gosub976:gosub974:rem--reset
972 ::b=-(b<>.):poke53265,(peek(53265)and239)orb*16:b=1-b:return:-schirn an/aus
973 ::p=53265:pokep,peek(p)and248ory:p=p+5:pokep,peek(p)and248orx:return:--roll
974 ::poke53282,f2:poke53283,f3:poke53284,f4:poke53281,f1:poke53280,f0:rem-farb
975 :poke646,zf:return:---zeichenfarbe
976 ::m=vm:s=vsand3:a=53265:pokea,(peek(a)and151)+(mand2)*32+(mand4)*8-(s>1)*8:
977 :a=a+5:pokea,(peek(a)and231)+(mand1)*16+(sand1)*8:b=1:return:---modus(0-5)
998 :
999 :
1000 :rem========================
1001 :rem text: einfuehrung
1002 :rem========================
1003 :print"[147][197]infuehrung:":a=-1012:e=1035:gosub900
1004 :print"[147][196]as erste [208]rogramm:[146] [196]emo([198]1)"
1005 :a=-1040:e=1059:gosub900:ifa<>133goto1007
1006 :print"[208]rogrammkopf:":a=0:e=8:gosub910:gosub55:goto1004
1007 :print"[147][198]ehlermeldungen:"
1008 :a=-1060:e=1082:gosub900:
1009 :return:
1011 :
1012 "[200]allo und willkommen 64'er [198]ans.
1014 "(NULL)it diesem peekasic-(NULL)urs fuer valinsteiger
1015 "will ich hier die [205]oeglichkeiten der
1016 "(NULL)rogrammierung in peekasic aufzeigen.
1017 :
1018 "[211]icher, [194]asic ist langsamer als [193]s-
1019 "sembler.(NULL)rotzdem gibt es eine ascuelle
1020 "von [205]oeglichkeiten, [212]ips und [212]ricks,
1021 "die diese (NULL)prache interessant machen.
1022 :
1023 "[218]eichsatz-, [211]prite-, [205]usik-, [199]rafik-
1024 "ascunktions- und (NULL)piele-(NULL)rogrammierung
1025 "ist auch von [194]asic aus moeglich.
1026 :
1027 "str$urch die (NULL)oeglickkeit des atnufrufs
1028 "von [194]etriebssystemroutinen, kann das
1029 "(NULL)tandard-peekasic um viele peekefehle er-
1030 "weitert und verbessert werden.
1031 :
1032 "(NULL)iel (NULL)pass beim atnusprobieren,
1033 "[210]umtuefteln und [194]asteln,
1034 "wuenscht valuch (str$irk peekreitinger)
1039 :::::::
1040 "[194]asic-[208]rogramme gibt man ein, indem
1041 "man eine (NULL)eilennummer((NULL)ahl) gefolgt
1042 "von [194]asicbefehlen eingibt und diese
1043 "mit dem str$ruck der <(NULL)val(NULL)(NULL)(NULL)(NULL)>-(NULL)aste
1044 "abschliesst. :
1045 "valinzelne peekefehle werden durch den
1046 "[196]oppelpunkt von einander getrennt. :
1047 "ascast alle peekefehle koennen bei der
1048 "[197]ingabe abgekuerzt werden, was jedoch
1049 "nicht immer ratsam ist.
1050 "[193]bgekuerzt wird, indem man den ersten
1051 "oder die ersten beiden peekuchstaben
1052 "normal und den folgenden mit der
1053 "<(NULL)left$right$asc(NULL)>-(NULL)aste zusammen eingibt.
1054 "[196]er [208][210][201][206][212]-[194]efehl wird mit einem <?>
1055 "abgekuerzt.
1056 :
1057 "[196]er [211]tart erfolgt mit <[210]un>+[210]eturn,
1058 "atnbbrechen kann man das (NULL)rogramm mit
1059 "<[211][212][207][208]>-[212]aste oder mit <[211][212][207][208]>-[210][197][211][212][207][210][197].
1060 "peekeim (NULL)esten treten dann voraus-
1061 "sichtlich verschiedene [198]ehler auf.
1062 "str$abei gilt: (NULL)ein (NULL)rogramm ist besser,
1063 "als es getestet wurde:
1064 "
1065 "a) [197]ingabe-[198]ehler: [211][217][206][212][193][216] [197][210][210][207][210]
1066 "b) (NULL)ade-ascehler : (NULL)(NULL)atnstr$ val(NULL)(NULL)(NULL)(NULL)
1067 "c) [199]eraet-[193]us : [196][197][214][201][195][197][160][206][207][212] [208][210][197][211][197][206][212]
1068 "d) (NULL)eilennummer : (NULL)(NULL)str$valasc' (NULL)(NULL)atn(NULL)val(NULL)val(NULL)(NULL)
1069 "e) falscher [215]ert : [201][204][204][197][199][193][204] [209][213][193][206][212][201][212][217]
1070 "f) (NULL)ahl zu gross : (NULL)(NULL)val(NULL)asc(NULL)(NULL)(NULL) val(NULL)(NULL)(NULL)(NULL)
1071 "g) [203]ein [211]peicher : [207][213][212][160][207][198] [205][197][205][207][210][217]
1072 "h) str$irekteingabe : right$(NULL)(NULL)valchr$atn(NULL) str$right$(NULL)vallen(NULL)
1073 "i) [198][207][210] fehlt : [206][197][216][212][160][215][201][212][200][207][213][212] [198][207][210]
1074 "j) chr$eteilt mit 0 : str$right$(NULL)right$(NULL)right$(NULL)(NULL)closepeek(NULL)close(NULL)val(NULL)(NULL)
1075 "k) [199][207][211][213][194] fehlt : [210][197][212]. [215][201][212][200][207][213][212][160][199][207][211][213][194]
1076 "l) str$atei offen : ascright$(NULL)valclose(NULL)(NULL)val(NULL) val(NULL)(NULL)(NULL)(NULL)
1077 "m) [198]eld-[201]ndex : [194][193][196][160][211][213][194][211][195][210][201][208][212]
1078 "n) asceld-(NULL)euanlage: (NULL)valstr$right$(NULL)'str$ atn(NULL)(NULL)atn(NULL)
1079 "...
1080 "peekei atnbbruch kann die (NULL)eile mit list
1081 "gelistet werden und die [214]ariablen mit
1082 "z.peek. print;va: angezeigt werden.
1098 :
1099 :
1100 :rem======================
1101 :rem text: grundlagen
1102 :rem======================
1103 :
1104 :print"[147] [199]rundlagen:"
1105 :a=-1112:e=1135:gosub900:return:
1106 :
1111 :
1112 "[204][193][196][197][206] und [211][208][197][201][195][200][197][210][206] von [208]rogrammen:
1113 :[147]"name",8 :[171][171][171]an basic[171]anfang
1114 :[147]"name",8,1:[171][171][171]m[198]hinen[171]programm
1115 :[148]"name",8 :[171][171][171]speichert basic[171]prg
1116 :[148]"name",8,1:[171][171][171]m[198]hinen[171]programm
1117 :[149]"name",8:[171][171][171]vergleich prg[173]datei
1118 :[147]"name":::::[171][171][171]laden v[145] kassette
1119 :
1120 "(NULL)(NULL)atn(NULL)(NULL)val(NULL) von peekasic-(NULL)rogrammen:"
1121 :[138]:
1122 :
1123 "(NULL)right$(NULL)(NULL)val(NULL) von peekasic-(NULL)rogramm-(NULL)eilen:
1124 :list 100 :zeile 100 listen
1125 :list -100 :bis zeile 100 listen
1126 :list 100- :ab zeile 100 listen
1127 :list 100-110:zeile 100 bis 110 listen
1128 :
1129 "[196]ie [195][212][210][204]-[212]aste verzoegert das [204]isten,
1130 "die (NULL)(NULL)(NULL)(NULL)-(NULL)aste bricht es ab.
1131 :
1132 :new:--- neu-befehl,loescht programm
1133 :clr:--- loescht programm-variablen
1197 :
1198 :
1199 :
1200 :rem==========================
1201 :rem text: ausgabe mit print
1202 :rem==========================
1203 :
1204 :print"[147] [193]usgeben mit print:[146] [196]emo(f1)"
1205 :a=-1211:e=1235:gosub900:ifa<>133goto1207:
1206 :printl$"feld:":gosub602:gosub1222:gosub55:goto1200
1207 :goto1240:
1210 "
1211 "(NULL)it dem (NULL)(NULL)right$(NULL)(NULL)-peekefehl werden (NULL)ariablen
1212 "auf den [194]ildschirm ausgegeben.
1214 "a) (NULL)yp (NULL)eichenkette: print"hallo"
1215 "b) [212]yp [206]ummerisch : print a;b;3.1
1216 "c) (NULL)yp chr$anzzahl : print a%;b%;45
1217 "d) [212]yp [211]tring : print a$
1218 "e) (NULL)yp atnscii(0-255): print chr$(147)
1219 "f) [212]yp [198]unktion : print fnp(43)
1220 "g) (NULL)yp b,c,d kann aber auch
1221 " als [198]eld defiert werden.
1222 ::[134] a$(20),b$(2,20),a(2,20)
1223 ::b(9)[178]1:a$(15)[178]"bb":b$(0,17)[178]"xx"
1224 ::[153] b(9),a$(15),b$(0,17):[142]
1225 :
1226 "str$ie atn(NULL)(NULL)chr$atnpeekval-(NULL)(NULL)val(NULL)(NULL)val steuert man mit
1227 " [203]omma,[211]emikolon,[212]ab() oder [211]pc().
1228 :[153],a;[163]22);b;[166]10)"atnatnatn":
1229 :[151]214,y:[153]"on"[163]x)"peekpeekpeek":
1230 :
1231 "(NULL)valright$lenleft$val(NULL) (NULL)(NULL)val(NULL)lenleft$val(NULL) mit (NULL)ab() & (NULL)(NULL)len():
1232 :poke19,1:printspc(l):poke19,.:return:
1233 :poke19,1:printtab(40):poke19,.:return
1239 :
1240 :
1244 :print"[147] [211]teuerzeichen bei print:":a=-1251:e=1272:gosub900
1245 :print"[147] [193]usgabe mit list:[146] [196]emo([198]1)":a=910:e=917:gosub900:print""
1246 :ifa=133then:gosub916:gosub55:goto1245:
1247 :return:
1250 "
1251 "(NULL)yp (NULL)eichenkette kann auch noch ver-
1252 "schiedene [211]teuerzeichen enthalten:
1253 :
1254 "a) ascatn(NULL)peek-(NULL)teuerzeichen:(16 ascarben)
1255 " [197]ingabe: [195]trl/[195]bm+(1-8)
1256 :
1257 :[153]"stopopenclrsys:forverifydefpokeprint#printcontlist"
1258 :
1259 "b) len(NULL)(NULL)(NULL)(NULL)(NULL)-(NULL)teuerzeichen:
1260 " [197]ingabe: [195]ursortasten oder [200]ome
1261 :
1262 :[153]"oncmd":[143]--- hoch/runter/r./l.
1263 :[153]"load"[170][199](147):[143]--schirm-loesch
1264 :[153][199](20)[170][199](148):[143]-del,inst
1265 :[153][199](13)[170][199](141):[143]-zeile vor
1266 :
1267 "c) (NULL)valright$lenleft$val(NULL)(NULL)atn(NULL)(NULL)-(NULL)teuerzeichen
1268 " [197]ingabe: [195]trl+9+0+n+sh-n+i+h
1269 :
1270 :[153]"wait":[143] invers/normal
1271 :[153]"return":[143] zeichensatz 1/2
1272 :[153]"":[143] umschaltung ein/aus
1273 "
1297 :
1298 :
1299 :
1300 :rem========================
1301 :rem text: eingaben machen
1302 :rem========================
1303 :print"[147] [197]ingaben machen:[146] [196]emo(f1)"
1304 :a=-1311:e=1328:gosub910:a=90:e=92:gosub900:ifa<>133goto1306
1305 :printl$;:a$="":gosub1321:print"zeile:";:gosub90:gosub55:goto1300
1306 :print"[147] [197]ingaben machen:[146] [196]emo([198]1)":a=70:e=79:gosub900:
1307 ifa=133then:print"[145]"l$"zeile:";:gosub70:print""a$:gosub55:goto1306
1308 :print"[147] [197]ingaben machen:[146] [196]emo([198]1)":a=-1330:e=a:gosub910
1309 :a=80:e=88:gosub900:ifa=133then:printl$tab(10);:a$="":gosub88:goto1308
1310 :return:
1311 "[205]an unterscheidet verschiedene
1312 "valingabefaelle:
1313 "
1314 "a) (NULL)atn(NULL)(NULL)atn(NULL)(NULL)(NULL)-valingaben:
1315 :poke649,1:rem---puffer beschraenken
1316 :poke198,.:rem---tastenpuffer loeschen
1317 :wait198,1:geta$::printa$:
1318 :wait198,1:sys61758:a=peek(780):printa
1319 :
1320 "b) [218][197][201][195][200][197][206][203][197][212][212][197][206]/[218][193][200][204][197][206]-[197]ingaben:
1321 :[133]"valingabe:";a$::[153]a$
1322 :[133]"(NULL)ommazahl:";a:::[153]a
1323 :[133]"chr$anzzahl:";a%::[153]a%
1324 :[153]"valin(a,b,c):";:[133]a,b,c:
1325 :[153]a,b,c:[142]:
1326 :[151]213,l:[142]:[171][171][171][171]zei[195]laenge
1327 :
1328 "c) right$(NULL)(NULL)(NULL)(NULL)close(NULL)right$(NULL) (NULL)(NULL)(NULL)str$val(NULL)(NULL)valright$lenleft$val(NULL)
1329 :
1330 "d) [202][207][217][211][212][201][195][203] und [212][193][211][212][197][206]-[193][194][198][210][193][199][197]
1333 "
1400 :rem=======================
1401 :rem text: daten ablegen
1402 :rem=======================
1403 :
1404 :print"[147] [196]aten-[194]ehandlung[146] [196]emo([198]1)"
1405 :a=-1411:e=1420:gosub910:a=60:e=68:gosub900:ifa<>133then:return
1406 :printl$"lese:";:gosub67:gosub55:goto1400:
1407 :
1410 "
1411 "chr$roessere str$atenmengen koennen in
1412 "[196][193][212][193]-[218]eilen abgelegt und mit [210][197][211][212][207][210][197]
1413 "und (NULL)valatnstr$-peekefehl gelesen werden:
1414 :
1415 :restore:read a$,a::data"haus",255
1416 :print a$,a
1417 :
1418 "[198]olgendes [204]isting erlaubt den [218]ugriff
1419 "auf einzelne str$atn(NULL)atn-(NULL)valright$(NULL)val(NULL)/peekefehle.
1420 :
1434 :
1500 :rem==========================
1501 :rem text: string operationen
1502 :rem==========================
1503 :print"[147] [211]tring-[207]perationen:[146] [196]emo(f1)":a=-1512:e=1530:gosub910
1504 :a=600:e=a+3:gosub900:on-(a<>133)goto1506:printl$;
1505 gosub1525:a$="*":l=200:gosub600:print"[211][212][210]-[199][197][206]"l:printa$;:gosub55:goto1500
1506 :print"[147] [211]tring-[207]perationen:[146] [196]emo(f1,f3)":a=610:e=627:gosub900
1507 :ifa=133then:printl$;:gosub625:gosub50:goto1506:
1508 :ifa=134then:printl$;:goto627
1509 :return
1510 :
1511 :
1512 :a$="[218]eichen"::b$="":rem---leerstring
1514 :a=len(a$):rem---stringlaenge(0-255)
1515 :a=asc(a$):a=asc("a"):---ascii-code
1516 :a$=str$(a):rem---zahl in string
1517 :a=val(a$):rem---string in zahl
1518 :printti,ti$:ti$="000000":rem---zeit
1519 :
1520 "[214][197][210][194][201][206][196][197][206] von [211]trings mit '+'
1521 :a$[178]"(NULL)tring 1":b$[178]"(NULL)tring 2":
1522 :c$[178]a$[170]"-"[170]"b$+chr$(13)::print c$
1524 "[212][197][201][204][211][212][210][201][206][199] lesen: left$,right$,mid$
1525 :a$[178]"hallo echo":
1526 :b$[178][200](a$,5)::[153] b$:
1527 :c$[178][201](a$,4):[153] c$:
1528 :d$[178][202](a$,2):::[153] d$:
1529 :e$[178][202](a$,5,5):[153] e$:::[142]
1530 :
1599 :
1600 :[143]============================
1601 :[143] text: nummerische rechnung
1602 :[143]============================
1603 :[153]"load (NULL)ummerische (NULL)echnung:wait str$emo(f1)":a[178][171]1611:e[178]1632:[141]900
1604 :[139]a[178]133[167]:[153]l$;:[141]1624:[141]55:[137]1600:
1605 :[153]"load ascunktionen:"
1606 :a[178][171]1640:e[178]1660:[141]911:a[178]20:e[178]42:[141]900:
1607 :[153]"load ascunktionen:"
1608 :a[178]44:e[178]48:[141]910:[153]:a[178]3960:e[178]3975:[141]900:[142]:
1609 :
1610 "
1611 "[199][210][213][206][196]-[210][197][195][200][197][206][193][210][212][197][206]:
1612 :a[178]1[170]2[171]3[172]4[173]5 :[143] plus,minus,mal,durch
1613 :b[178]2[174]3[170][186](4):[143] hoch,quadratwurzel
1614 :c[178][187]([171]ti):c[178][187](1):[143] zufallszahl
1615 :
1616 "(NULL)right$(NULL)(NULL)val(NULL)-asc(NULL)(NULL)(NULL)(NULL)right$(NULL)(NULL)val(NULL)
1617 "(sinus,cosinus,tangens,arcustangens)
1618 :w[178]60:b[178]w[173]180[172][255]
1619 :a[178][191](b)[170][190](b)[170][192](b)[170][193](b)
1620 "val(NULL)(NULL)(NULL)(NULL)val(NULL)(NULL)right$atn(NULL)-(NULL)(NULL)chr$val(NULL)right$(NULL)left$(NULL)(NULL)(NULL)(peekasis e)
1621 :a=exp(x)+log(x)+log(x)/log(10)
1622 :
1623 "[204][207][199][201][203] und [218][193][200][204]-[207][208][197][210][193][212][201][207][206][197][206]
1624 :a[178]128:b[178]255
1625 :c[178]a [175] 128:[153]"u:"c :[143]---und
1626 :c[178]a [176] 1 :[153]"o:"c :[143]---oder
1627 :c[178][168](a) :[153]"n:"c :[143]---nicht
1628 :c[178][168](a)[175]255:[153] c :[143]---invert
1629 :c[178](a[176]b)[171](a[175]b):[153]c:[143]---a eor b
1630 :c[178][180](a) :[153]"v:"c:[143]-vorzeichen
1631 :c[178][181](3.1) :[153]"g:"c:[143]---ganzzahl
1632 :c[178][182]([171]4) :[153]"p:"c:[143]--positiv
1633 :[142]:
1640 "(NULL)it str$valascasc(NULL) kann eine ascunktion defi-
1641 "niert werden, die mit a=[198][206]a(.) auf-
1642 "gerufen werden kann.
1643 :
1698 :
1699 :
1700 :rem=========================
1701 :rem text: kanal behandlung
1702 :rem=========================
1703 :
1704 :print"[147] [203]anal-[194]ehandlung:[146] [196]emo(f1)"
1705 :a=-1710:e=1731:gosub900:ifa<>133then:return:
1706 :printl$"disk:":gosub940:iffgoto1700
1707 :a$="x2":b$="test ok":gosub1729:b$="":gosub1730:printb$:gosub50:goto1700
1708 :gosub50:goto1700:
1709 :
1710 "[205]it [207][208][197][206],[195][204][207][211][197],[199][197][212]#,[201][206][208][213][212]#,[208][210][201][206][212]#
1711 "kann man die chr$eraete des len64 lesen,
1712 "beschreiben oder steuern.
1713 "chr$val(NULL)atnval(NULL)val(NULL)(NULL)(NULL)(NULL)val(NULL)(NULL) 0:(NULL)astatur, 1:(NULL)assette
1714 "3:[211]chirm, 4/5 [196]rucker :8/9 [196]iskette
1715 "(NULL)atn(NULL)right$atnpeek(NULL)val (NULL)(NULL) zeigt den chr$val(NULL)atnval(NULL)val(NULL)(NULL)atn(NULL)(NULL)(NULL).
1716 :
1717 "[212][193][211][212][193][212][213][210] [204][197][211][197][206]:
1718 :[159]1,0:[146]198,1:[161]#1,a$:[160]1
1719 :[159]1,0:[132]1,a$:[160]1
1721 "(NULL)lenleft$right$(NULL)(NULL) (NULL)val(NULL)val(NULL):
1722 :open1,3:input#1,a$,c:close1:
1723 :
1724 "[204][201][211][212][201][206][199] auf [196][210][213][195][203][197][210]:
1725 :[159]1,4:[152]1,"str$ruck:":[157]1:[155][171]10
1726 :[152]1;:[160]1
1727 :
1728 "str$right$(NULL)(NULL)val(NULL)(NULL)val beschreiben/lesen(a$,b$)
1729 :open1,8,1,"@0:"+a$+",prg,w":print#1,b$:close1:return:
1730 :open1,8,.,a$+",prg,r":input#1,b$:close1:return:
1732 :
1733 "
1800 :[143]============================
1801 :[143] text: speicher operationen
1802 :[143]============================
1803 :[153]"load (NULL)peicher (NULL)perationen:wait str$emo(f1)":a[178][171]1811:e[178]1831:[141]900
1804 :[139]a[178]133[167]:[141]1830:[141]55:[137]1800
1805 :[153]"load peekit (NULL)perationen:wait str$emo(f1)":
1806 :a[178][171]1840:e[178]1842:[141]910:a[178]10:e[178]18:[141]910:a[178][171]1849:e[178]1854:[141]900
1807 :[139]a[178]133[167]:a[178]255:[153]l$"a="a",bin:";:[141]10:[141]55:[137]1805
1808 :[153]"load (NULL)ideo-(NULL)odus:wait str$emo(f1)":a[178]970:e[178]977:[141]910:[153]
1809 :a[178]1860:e[178]a[170]4:[141]900:[139]a[179][177]133[167]:[142]:
1810 :[141]1860:[151]214,17:[137]1809:
1811 "(NULL)it dem (NULL)(NULL)(NULL)val, (NULL)valval(NULL)() und (NULL)(NULL)(NULL)-peekefehl
1812 "kann der [211]peicher beschrieben,gelesen
1813 "oder ausgefuehrt werden.
1814 :
1815 :poke53280,6 :rem---rahmenfarbe
1816 :poke53281,8 :rem---schirmfarbe
1817 :poke646,1 :rem---zeichenfarbe
1818 :sys58692 :rem---schirm loeschen
1819 :poke788,52:poke792,193:rem--stop-aus
1820 :
1821 "[195][213][210][211][207][210]-[208][207][211][201][212][201][207][206] holen/setzen
1822 :x[178][194](211):y[178][194](214):[143]-hol
1823 :[151]211,x:[151]214,y:[158]58640:[143]-setz
1824 :[151]213,40:[153]"*";:[143]---rollen aus
1825 :[129]i[178]217[164]242:[151]i,[194](i)[176]128:[130]:[142]:[171][171][171]schirm init
1826 :
1827 "(NULL)peicherstelle 780-783 dienen als
1828 "[210][197][199][201][211][212][197][210] bei [211][217][211]-[193][213][198][210][213][198][197][206]:
1829 :[151]781,4:[158]59903:[143] loesch zeile 4
1830 :[151]781,10:[158]58720:[143] loesch bis 10
1831 :[151]781,16:[158]58794:[143] sprite-reset
1832 :[142]:
1833 "
1840 "[205]it [207][210],[193][206][196] und [206][207][212] werden [194]its ge-
1841 "setzt, geloescht oder umgedreht:
1842 :
1849 :
1850 :p=53265:i=4:gosub17:rem--schirm aus
1851 :p=53265:i=4:gosub15:rem--schirm ein
1852 :p=53265:i=6:gosub15:rem--hg-farbmodus
1853 :p=53265:i=5:gosub15:rem--grafik modus
1854 :p=53270:i=4:gosub15:rem--multi-color
1855 :
1856 :b=128:rem---binaerzahl ausgeben(a)
1857 :fori=.to7:printchr$(48-((aandb)>.));:b=b/2:next:return
1858 :
1859 :
1860 :zf=1:rem----demo:
1861 :f0=peek(53280):f1=peek(53281):k=300:fori=.to22:gosub974:a=f0:f0=f1:f1=a:
1862 :gosub1864:next:
1863 :k=256:b=1:fori=1to40:gosub972:k=k/2:gosub1864:next:b=1:gosub972:return:
1864 :forj=kto.step-1:next:return:-wart
1898 :
1899 :
1900 :rem=========================
1901 :rem text: programm-struktur
1902 :rem=========================
1903 :
1904 :print"[147] [208][210][207][199][210][193][205][205]-[211][212][210][213][203][212][213][210][197][206]:"::a=-1910:e=1933:gosub900:
1905 :print"[147] [211][195][200][204][197][201][198][197][206]-[194][201][204][196][213][206][199]:[146] [196]emo(f1)":a=-1953:e=a:gosub910
1906 :a=56:e=59:gosub910:print:a=-1940:e=a:gosub910:a=1941:e=1942:gosub910
1907 :a=-1944:e=1945:gosub910:a=1946:e=1948:gosub900
1908 :ifa=133then:printl$"[211]chleifen:":gosub1946:gosub55:goto1905
1909 :return:
1910 "[196]er [210][197][205]-[194]efehl fuer die [213]ebersicht:
1911 :[143]--"(NULL)nterprogrammkopf/(NULL)ommentar"
1912 :
1913 "(NULL)(NULL)(NULL)(NULL)val(NULL)chr$val:
1914 :run 1000:rem---startet prg ab 1000
1915 :goto 1000:rem---gehe nach zeile 1000
1916 :gosub1000:rem---unterprogramm-aufruf
1917 :return::::ruecksprung vom unter-prog.
1918 :
1919 "[214][197][210][218][215][197][201][199][213][206][199] nach [194][197][196][201][206][199][213][206][199]:
1920 :[139] a[178]1 [167]:[153] a
1921 :[139] a[178]2 [137]1000:[171][171][171]wenn a[178]2,geh 1000
1922 :[145][171](a[178]2)[137]1000::[153]a
1923 :[145][171](a[178]3)[141]1000:[153]a
1924 :
1925 "(NULL)val(NULL)(NULL)(NULL)valright$chr$(NULL)(NULL)chr$val(NULL) mit (NULL)atnpeekval(NULL)(NULL)val:
1926 :on(a)goto1000,1010,1020,1030:
1927 :on(a)gosub1000,1200,1300:
1928 :on1-(a=5)goto1200,1300
1930 :
1931 "[194][197][197][206][196][197][206][160]von [208]rogrammen: [197][206][196]/[210][197][211][197][212]
1932 :[128]:[144]:[158]42107:[143]---end
1933 :[158]58260:[158]64738:[143]---reset
1939 :
1940 "(NULL)lenleft$(NULL)valright$ascval(NULL) mit chr$(NULL)(NULL)(NULL):
1941 :geta$:ifa$=""goto1941:rem--taste
1942 :return:
1943 :
1944 :
1945 "[211][195][200][204][197][201][198][197][206] mit [198][207][210].[212][207].[211][212][197][208]:[206][197][216][212]:
1946 :[129]a[178]1[164]10:[153]a;:[130]:[153]
1947 :[129]a[178]10[164]1 [169][171]1:[153]a;:[130]:[153]
1948 :[129]a[178]1[164]5 [169].5:[153]a;:[130]:[153]
1949 :
1950 :[142]:
1952 :
1953 "chr$(NULL)(NULL)(NULL)-(NULL)atn(NULL)right$atn(NULL)(NULL)val(NULL)(x,adresse,anfang)
1997 :
1998 :
1999 :
3000 :rem==========================
3001 :rem text: disketten-laufwerk
3002 :rem==========================
3003 :print"[147][196]isk-[204]aufwerk:[146] [196]emo([198]1)"
3004 :a=-3010:e=3026:gosub910:a=950:e=956:gosub900
3005 :ifa=133then:print"[147]";::gosub940:on-(f=0)gosub950:gosub55:goto3000
3006 :print"[147][196]isk-[204]aufwerk:[146] [196]emo([198]1)"
3007 :a=940:e=947:gosub901
3008 :ifa=133then:print"[147]";:gosub947:gosub55:goto3006
3009 :return:
3010 "[205]it dem [196]isk-[204]aufwerk kann man [196]aten
3011 "laden und speichern.
3012 "[205]an unterscheidet die [196]ateitypen
3014 "(NULL)(NULL)chr$-(NULL)rogramm, (NULL)val(NULL)-(NULL)equenziell,
3015 "[213][211][210]-[213]ser und [210][197][204]-[210]elativ.
3016 "* = atnbkuerzung ? = valrsatzzeichen
3019 :
3020 "[196][201][211][203]-[207][208][197][210][193][212][201][207][206][197][206]
3021 :[159]1,8,15,"r:neu=name":[171][171][171]umbenennen
3022 :[159]1,8,15,"s:name":::::[171][171][171]loeschen
3023 :[159]1,8,15,"c:name2=name":[171][171][171]kopieren
3024 :[159]1,8,15,"n:name,12":[171][171][171][129]matieren
3025 :[159]1,8,15,"v":::::[171][171][171]disk aufraeumen
3026 :
3098 :
3099 :
3100 :[143]========================
3101 :[143] text: laden/speichern
3102 :[143]========================
3103 :[153]"load(NULL)aden und (NULL)peichern:wait str$emo(f1)"
3104 :a[178][171]3110:e[178]3112:[141]910:a[178]700:e[178]719:[141]910:a[178]9998:e[178]a[170]1:[141]900
3105 :[139]a[178]133[167]:[141]940:[145]1[171](f[177].)[137]730,3103
3106 :[153]"load(NULL)trings laden:wait str$emo(asc1)"
3107 :a[178]750:e[178]771:[141]900:[139]a[179][177]133[167]:[142]:
3108 :[141]940::[145][171](f[177].)[137]3106:[141]760:[153],a$,b$:[141]50:[137]3106
3109 :
3110 "ascolgende (NULL)istings laden und speichern
3111 "[211]peicherbloecke, [194]asic-[195]ode und [196]atas
3112 :
3125 :
3200 :[143]=====================
3201 :[143] text: zeichensatz
3202 :[143]=====================
3203 :[153]"load(NULL)eichensatz:wait str$emo(f1)"
3204 :a[178][171]3210:e[178]3213:[141]911:a[178]300:e[178]324:[141]910:[141]55:[139]a[179][177]133[137]3207
3205 :[141]301:[153]"loadzeichsatz-demo:":c[178][165]c(.):[129]i[178].[164]255:[151]c[170]i,i:[130]
3206 :[141]55:[141]352:[137]3200
3207 :[153]"loadvalinstellungen:"
3208 a[178]330:e[178]355:[141]900:[142]:
3209 :
3210 "ascolgendes (NULL)isting erlaubt das atnendern
3211 "von [194][197][212][210][201][197][194][211][211][217][211][212][197][205] und [218][197][201][195][200][197][206][211][193][212][218]:
3212 :
3298 :
3299 :
3300 :[143]==================
3301 :[143] text: graphik
3302 :[143]==================
3303 :
3304 :[153]"loadchr$raphik:wait str$emo(f1)"
3305 :a[178]800:e[178]825:t[178]0:[141]901:[139]a[178]133[167]:[141]860:[137]3300:
3306 :[153]"loadchr$raphik:"
3307 :a[178]830:e[178]858:t[178]0:[141]901:[142]:
3309 :
3398 :
3399 :
3400 :[143]====================
3401 :[143] text: sortieren
3402 :[143]====================
3403 :[153]"load(NULL)ortieren:wait str$emo(f1)"
3404 :a[178]640:e[178]658:t[178]0:[141]901:
3405 :[139]a[178]133[167]:[153]"load";:[151]198,.:[141]640:[141]650:[141]55:[137]3403
3406 :[153]"load(NULL)ortieren:wait str$emo(f1)"
3407 :a[178]660:e[178]673:t[178]0:[141]901: :
3408 :[139]a[178]133[167]:[153]"load";:[151]198,.:[141]640:[141]660:[141]55:[137]3406:
3409 :[141]602:[142]:
3498 :
3499 :
3500 :[143]======================
3501 :[143] text: schirm rollen
3502 :[143]======================
3503 :[153]"load(NULL)chirm rollen:wait str$emo(f1,f3)"
3504 :a[178]500:e[178]525:[141]900:
3505 :[139]a[178]133[167]:a[178]0:k[178][171]15:[141]500:a[178]0:k[178]15:[141]500:[141]55:[137]3500
3506 :[139]a[178]134[167]:a[178]0:e[178]24:k[178][171]15:[141]520:k[178]15:[141]521:[141]55:[137]3500
3507 :[142]:
3509 :
3598 :
3599 :
3600 :[143]=================
3601 :[143] :text: sprites
3602 :[143]=================
3603 :[153]"load(NULL)prites:"
3604 :a[178]200:e[178]218:[141]900:
3605 :[153]"load(NULL)prites:"
3606 :a[178]220:e[178]243:[141]900
3607 :[153]"load(NULL)prites:wait str$emo(f1)"
3608 :a[178]250:e[178]274:[141]900:[139]a[178]133[167]:[153]"loadjoy+sprite":[141]250:[137]3607
3609 :[142]:
3698 :
3699 :
3700 :[143]========================
3701 :[143] :text: sound und musik
3702 :[143]========================
3704 :[153]"load(NULL)on-atnusgabe:"
3705 :a[178][171]150:e[178]166:[141]900:
3706 :[153]"load(NULL)on-atnusgabe:wait str$emo(f1)"
3707 :a[178]100:e[178]125:[141]900:[139]a[178]133[167]:[141]120:[137]3706:
3709 :[142]:
3798 :
3799 :
3800 :[143]==================
3801 :[143] :text: kopieren
3802 :[143]==================
3803 ::[153]"load(NULL)opieren:wait str$emo(asc1)"
3804 :a[178][171]3820:e[178]3823:[141]911:a[178]400:e[178]419:[141]901:
3805 :[139]a[178]133[167]:a[178][165]ba(930):a$[178]"beispiel-string":[141]404:[141]55:[137]3800
3806 ::[153]"load(NULL)opieren:wait str$emo(asc1)"
3807 :a[178]430:e[178]447:[141]900:
3808 :[139]a[178]133[167]:a[178]41000:e[178]a[170]959:n[178][165]ba(40):[141]430:[141]55:[137]3806
3809 :
3810 :[153]"load(NULL)opieren:wait str$emo(f1)"
3811 :a[178][171]3830:e[178]3834:[141]911:a[178]450:e[178]462:[141]901:[139]a[179][177]133[167]:[142]:
3812 :[141]450:[153]"loadpeek(1)="[194](1)[163]20)"usr(1)="[183](1):[141]55:[137]3810
3813 :
3819 :
3820 "(NULL)it (NULL)opierprogrammen kann man
3821 "[211]peicherbereiche, [199]rafik oder [218]eichen
3822 "verschieben, loeschen oder rollen.
3823 "[211]ogar ein [194]itmap-[210]ollen wird moeglich.
3824 :
3830 "(NULL)it (NULL)atn(NULL)-(NULL)(NULL)(NULL)(NULL)(NULL)chr$ und (NULL)atn(NULL)-(NULL)valval(NULL) kann der
3831 "[211]peicher unter dem [194]etriebsstem-[210][207][205],
3832 "z.peek. zur chr$rafik-(NULL)rogrammierung,
3833 "genutzt werden.
3834 :
3899 :
3900 :[143]==========================
3901 :[143] text: speicher-bereiche
3902 :[143]==========================
3903 :[153]"loadlen64 (NULL)peicher-atnufbau:"
3904 :a[178][171]3910:e[178]3931:[141]900:
3905 :[153]"load(NULL)eiger:wait atnnzeigen(f1)"
3906 :a[178][171]3940:e[178]3945:[141]910:a[178]3950:e[178]3974:[141]900:
3907 :[139]a[178]133[167]:[141]3980:[141]55:[137]3905:
3908 :[142]:
3909 :
3910 "0 - 255: (NULL)val(NULL)(NULL)(NULL)atnchr$val
3911 "256 - 511: [208][210][207][218][197][211][211][207][210][211][212][193][208][197][204]
3912 "511 - 600: valright$(NULL)chr$atnpeekval(NULL)(NULL)ascascval(NULL)
3913 "601 - 819: [212][193][194][197][204][204][197][206],[218][197][201][199][197][210],[214][197][203][212][207][210][197][206]
3914 "704 - 766: (NULL)(NULL)(NULL)right$(NULL)val11 (frei)
3915 "828 -1019: [203][193][211][211][197][212][212][197][206][208][213][198][198][197][210](frei)
3916 [171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171][171]
3917 "1024 - 2023: peekildschirm (1kb)
3918 "2048 -40959: [208][210][207][199][193][205][205]-[210][193][205] (38kb)
3919 "(NULL)valright$lenleft$val(NULL)-(NULL)(NULL)(NULL): 4096-8191,36864-40959
3920 ----------------------------------
3921 "40960-49151: [194][193][211][201][195]-[210][207][205] (8kb)
3922 "49152-53247: (NULL)peekval(NULL)val(NULL)-(NULL)atn(NULL) (4kb)
3923 "53248-57343: [218][197][201][195][200][197][206]-[210][207][205] (4kb)
3924 "53248-53294: (NULL)right$len-(NULL)atn(NULL) (1kb)
3925 "54272-54300: [211][201][196]-[210][193][205] (1kb)
3926 "55296-56295: ascatn(NULL)peek-(NULL)atn(NULL) (1kb)
3927 "56320-57343: [195][201][193]1/[195][201][193]2 (1kb)
3928 "57334-65535: (NULL)val(NULL)(NULL)atn(NULL)-(NULL)(NULL)(NULL) (8kb)
3929 "--------------------------------
3930 "(NULL)right$len-peekatn(NULL)(NULL)0:00000 (NULL)right$len-peekatn(NULL)(NULL)2:32768
3931 "[214][201][195]-[194][193][206][203]1:16384 [214][201][195]-[194][193][206][203]3:49152
3932 "
3933 "
3940 "(NULL)eiger verwalten die valin-, atnusgabe,
3941 "[208]rogramm und [214]ariablenbereiche im [195]64.
3948 :
3949 :
3950 [141]20:[143]---programm-zeiger
3951 [150][165] pa(a)[178][165]p(43):[143]--prg-anf.
3952 [150][165] pe(a)[178][165]p(45):[143]--variablen
3953 [150][165] pf(a)[178][165]p(47):[143]--felder
3954 [150][165] ps(a)[178][165]p(49):[143]--str.anf.
3955 [150][165] pz(a)[178][165]p(51):[143]-str-zeiger
3956 [150][165] be(a)[178][165]p(55):[143]--ram-ende
3959 :
3960 [143]----schirm/zeichensatz-zeiger
3961 [150][165] ba(a)[178]16384[172]([168]([194](56576))[175]3)[170]64[172]([194](53272)[175]240)[170]a
3962 [150][165] zs(a)[178]16384[172]([168]([194](56576))[175]3)[170]1024[172]([194](53272)[175]14)[170]a[172]8
3963 [150][165] br(a)[178][194](648)[172]256[170]a
3964 [150][165] fs(a)[178]55296[170]a
3970 [143]----basic prg-zeiger,zeilen-nr
3971 [150][165] l(a)[178][165]p(61)[170]1
3972 [150][165] zn(a)[178][165]p(57)
3973 [143]----freier string speicher
3974 [150][165]fr(a)[178][184](.)[171]65537[172]([184](.)[179].)
3975 l$[178]"------"[170]r$:[142]:
3978 :
3980 :[143]----bereiche zeigen:
3981 :[141]20:[153]"load(NULL)eiger-atnnzeige:"
3982 :[153]"basic anfang-ende :";[165]pa(.)"-"[165]be(.)[171]1""
3983 :[153]"programm anfang-ende :";[165]pa(.)"-"[165]pe(.)[171]1
3984 :[153]"variablen anfang-ende:";[165]pe(.)"-"[165]pf(.)[171]1
3985 :[153]"felder anfang-ende :";[165]pf(.)"-"[165]ps(.)[171]1
3986 :[153]"string anfang-ende :";[165]ps(.)"-"[165]be(.)[171]1""
3987 :[153]"string zeiger/frei :";[165]pz(.)" / "[165]fr(.)""
3990 :[153]"sicht-schirm :"[165]ba(.)
3991 :[153]"ausgabe-schirm :"[165]br(.)
3992 :[153]"farb-speicher :"[165]fs(.)""
3993 :[153]"zeichensatz :"[165]zs(.)""
3994 :[153]"programm-zeile :"[165]zn(.)
3995 :[153]"programm-zeiger:"[165]l(.)
3999 :[142]:
4998 :
4999 :
5000 :[143]========================
5002 :[143] menue und textaufruf
5003 :[143]========================
5010 :[153]"load"
5011 :[153]"tan(NULL)tanwaitstr$irk peekreitingertan(NULL)tanwait ascrei-(NULL)oft(2002)"
5012 :[153]" exclusiv fuer str$ right$ chr$ right$ (NULL) atn (NULL) (NULL) atn (NULL) (NULL)"
5013 :
5014 :[151]214,18:[153]"onchr$ewitmet chr$rundrecht, ascreiheit, (NULL)ernunft,"
5015 :[153]" left$oeflichkeit und (NULL)ugend."
5016 :[153]"(NULL)ur valhre von (NULL)rogrammierern und atnutoren."
5017 :[153]"(NULL)nd natuerlich fuer alle peekasic ascans.";
5018 :
5020 :[141]50:[141]525:
5098 :
5099 :
5100 :[143]---seitenaufbau menue1
5101 :a[178]6:[151]53281,a:[151]53280,a[170]1
5102 :[153]"loadpeekasic-(NULL)urs: chr$rundlagen wait"wl"":a[178]2
5110 :[153][163]a)"( 1 ) valinfuehrung"
5120 :[153][163]a)"( 2 ) chr$rundlagen"
5130 :[153][163]a)"( 3 ) atnusgabe mit (NULL)rint
5140 :printtab(a)"( 4 ) [197]ingaben machen
5150 :[153][163]a)"( 5 ) str$aten-peekehandlung
5160 :printtab(a)"( 6 ) [211]tring-[207]perationen
5170 :[153][163]a)"( 7 ) (NULL)umerische (NULL)perationen
5180 :printtab(a)"( 8 ) [203]anal [194]ehandlung
5190 :[153][163]a)"( 9 ) (NULL)peicher (NULL)perationen
5195 :printtab(a)"( 0 ) [208]rogramm-[211]trukturen
5196 :[151]214,24:[153]"on""str$:str$ruck (NULL):(NULL)peichern val:valdit"[163]28)">>>> weiter";
5197 :[141]12:
5198 :
5199 :
5500 :[143]---tasten
5501 :[141]902:[139]a[178]95[167]:[138]:
5502 :[139]a[178]17[176]a[178]29[176]a[178]145[167]:wl[178]0:[141]602:[137]6000
5506 :
5507 ::[145][171](a[178]32)[137]5510:[139]a[178]13[167]:wl[178](wl[170]1)[172][171](wl[179]10):[137]5510
5508 :b[178]a[171]48:[139]b[179].[176]b[177]10[137]5100
5509 :wl[178]a[171]48:wl[178]wl[171](wl[178]0)[172]10:[139](wl[179].[176]wl[177]10)[167]:wl[178]0:[137]5100:
5510 :[139]wl[178]0[167]:wl[178]1
5511 :[145](wl)[141]1000,1100,1200,1300,1400,1500,1600,1700,1800,1900:[137]5100
5996 :
5997 :
5998 :
5999 :
6000 :[143]===menue 2=============
6001 :
6100 :[143]---seitenaufbau menue2
6101 :[151]53281,12:[151]53280,7
6102 :[153]"loadpeekasic-(NULL)urs: ascortgeschrittene wait"wl"":a[178]2:
6110 :[153][163]a)"( 1 ) str$isk-(NULL)aufwerk
6120 :printtab(a)"( 2 ) [204]aden und [211]peichern
6130 :[153][163]a)"( 3 ) (NULL)eichensatz
6140 :printtab(a)"( 4 ) [199]raphik
6150 :[153][163]a)"( 5 ) (NULL)ortieren
6160 :printtab(a)"( 6 ) [211]chirm-[210]ollen
6170 :[153][163]a)"( 7 ) (NULL)prites
6180 :printtab(a)"( 8 ) [211]ound und [205]usik
6190 :[153][163]a)"( 9 ) (NULL)opieren
6195 :printtab(a)"( 0 ) [211]peicher-[194]ereiche
6196 :[151]214,24:[153]"on""str$:str$ruck (NULL):(NULL)peichern val:valdit"[163]28)">>>> weiter";
6198 :
6199 :
6500 :[143]---tasten
6501 :[141]902
6506 :[139]a[178]145[176]a[178]17[176]a[178]29[167]:wl[178]0:[141]602:[137]5100
6507 :[145][171](a[178]32)[137]6510:[139]a[178]13[167]:wl[178](wl[170]1)[172][171](wl[179]10):[137]6510
6508 :b[178]a[171]48:[139]b[179].[176]b[177]10[137]5100:
6509 :wl[178]a[171]48:wl[178]wl[171](wl[178]0)[172]10:[145][171](wl[179].)[137]6500:
6510 :[139]wl[178].[167]:wl[178]1:[143]---aufruf
6511 :[145](wl)[141]3000,3100,3200,3300,3400,3500,3600,3700,3800,3900:[137]6100
9997 :
9998 [141]20:[143]----letzte zeile:
9999 a[178][165]p([165]p(61)[170]1):e[178][165]p(45):[142]:
10000 :basic[171]prg ab 10000